So...
The map change type only ever occurs if the map literally changes. In other words: nextMap != currentMap.
This can be triggered by rcon 'map' command, the bsp- and leveltransition scripting commands and
trigger_changelevel (so generally speaking; any command that can change a map).
Oh, even if you explicitly try to load the same map via rcon or otherwise, the game will only restart it.
Actually, this could explain the problems that servers have when they keep running the same map, but
I'm getting side-tracked.
The player intermission type then only happens when the 'level' on the current map has ended.
With 'level' I mean that either the fraglimit or the timelimit has been breached.
(If I'm not mistaken, if the timelimit is exceeded in gametypes 3 and 4, then the game will wait until
either fraglimit or roundlimit has been breached. Same result, though.)
Interestingly, the scripting commands 'bsptransition' and 'leveltransition' will always trigger the actual
15 second player intermission screen before loading maps; however this event is not fired (probably
because g_gametype has to temporarily be 0 (single player) in order for these commands to work).
The map restart type happens when a round has ended. A round typically ends in a victory
(or a draw) or because the roundlimit was exceeded.
If the level ends, no more rounds will follow and thus no more restarts unless, as mentioned above,
the map itself does not change.
This event is also triggered by (rcon) restart command as well as do- and finishroundtransition
scripting commands (so generally speaking; any command that initiates a map restart).
Does this sum it up nicely? Correct me if I'm wrong somewhere.


Reply With Quote





